<!DOCTYPE html>
            
<HTML>
<HEAD>
<meta name="booktitle" content="Developing Applications With Objective Caml" >
 <meta charset="ISO-8859-1"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<META name="GENERATOR" content="hevea 1.05-7 of 2000-02-24">
<META NAME="Author" CONTENT="Christian.Queinnec@lip6.fr">
<LINK rel=stylesheet type="text/css" href="videoc-ocda.css">
<script language="JavaScript" src="videoc.js"><!--
//--></script>
<TITLE>
 To Learn More
</TITLE>
</HEAD>
<BODY class="regularBody">
<A HREF="book-ora148.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Contents"></A>
<A HREF="book-ora151.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H2> To Learn More</H2>
There are a huge number of publications on object-oriented programming. Each
language implements a different model.<BR>
<BR>
A general introduction (still topical for the first part) is ``Langages �
Objets&nbsp;'' ([<A HREF="book-ora214.html#LAO"><CITE>MNC</CITE><SUP><CITE><FONT SIZE=2>+</FONT></CITE></SUP><CITE>91</CITE></A>]) which explains the object-oriented approach. A more
specialized book, ``Langages et mod�les � objets'' [<A HREF="book-ora214.html#lmo98"><CITE>DEMN98</CITE></A>], gives the
examples in this domain.<BR>
<BR>
For modeling, the book ``Design patterns'' ([<A HREF="book-ora214.html#DP"><CITE>GHJV95</CITE></A>]) gives a catalogue of
design patterns that show how reusability is possible.<BR>
<BR>
The reference site for the UML notation is Rational: 


<H3> Link </H3> <HR>

<A HREF="http://www.rational.com/uml/resources">http://www.rational.com/uml/resources</A>


<HR>

<BR>
<BR>
For functional languages with an object extension, we mention the ``Lisp''
objects, coming from the SMALLTALK world,
and CLOS (meaning Common Lisp Object System), as well as a number of
Scheme's implementing generic functions similar to those in CLOS. <BR>
<BR>
Other proposals for object-oriented languages have been made for statically typed
functional languages, such as Haskell, a pure functional language which has
parameterized and <EM>ad hoc</EM> polymorphism for overloading.<BR>
<BR>
The paper [<A HREF="book-ora214.html#Remy-Vouillon"><CITE>RV98</CITE></A>] presents the theoretical aspects of the
object extension of Objective CAML. <BR>
<BR>
To learn more on the static object typing in Objective CAML, you can look at several
lectures available online.<BR>
<BR>
Lectures by Mar�a-Virginia Aponte:<BR>
<BR>


<H3> Link </H3> <HR>

<A HREF="http://tulipe.cnam.fr/personne/aponte/ocaml.html">http://tulipe.cnam.fr/personne/aponte/ocaml.html</A>


<HR>

<BR>
<BR>
A short presentation of objects by Didier R�my:<BR>
<BR>


<H3> Link </H3> <HR>

<A HREF="http://pauillac.inria.fr/~remy/objectdemo.html">http://pauillac.inria.fr/~remy/objectdemo.html</A>


<HR>

<BR>
<BR>
Lectures by Didier R�my at Magist�re MMFAI:<BR>
<BR>


<H3> Link </H3> <HR>

<A HREF="http://pauillac.inria.fr/~remy/classes/magistere/">http://pauillac.inria.fr/~remy/classes/magistere/</A>


<HR>

<BR>
<BR>
Lectures by Roberto Di Cosmo at Magist�re MMFAI:<BR>
<BR>


<H3> Link </H3> <HR>

<A HREF="http://www.dmi.ens.fr/users/dicosmo/CourseNotes/OO/">http://www.dmi.ens.fr/users/dicosmo/CourseNotes/OO/</A>


<HR>

<BR>
<BR>

<BR>
<BR>

<BR>
<BR>
<BR>
<BR>
<HR>
<A HREF="book-ora148.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Contents"></A>
<A HREF="book-ora151.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
